Архитектуру .NET Core можно разделить на несколько компонентов, которые, взаимодействуя друг с другом, обеспечивают целостную среду разработки для создания приложений. К этим компонентам относятся:
Спецификация общего языка (CLS) определяет набор правил и рекомендаций, которым должны следовать языки программирования, чтобы быть совместимыми в среде .NET
Система общих типов (CTS) формирует основу для определения типов данных и взаимодействия с ними в рамках .NET Framework. Он устанавливает согласованный тип системы, которая обеспечивает обмен данными и совместимость на разных языках.
В основе архитектуры .NET лежит среда Common Language Runtime (CLR). Эта среда выполнения управляет выполнением кода, распределением памяти и обработкой ресурсов. Он предоставляет такие функции, как сбор мусора, обработку исключений и безопасность кода, обеспечивая надежную и эффективную работу приложений.
Управляемый код лежит в рамках CLR и его преимущество в том что, здесь например работает сборщик мусора и система безопасности основанная типах
Неуправляемый код, как правило си или плюсы взаимодействует напрямую с системой, это может быть нужно анпример для устранения разрыва между современными приложениями .NET и устаревшими системами.
IL Это язык в который преобразуются другие языки, бэйсик, шарпы. Он похож на ассемблер, но предназначен чисто для дотнета.
Метаданные — набор из таблиц данных, описывающих то, что определено в модуле.